TCLAP is a small, flexible library that provides a simple interface
for defining and accessing command line arguments. It was initially
inspired by the user friendly CLAP libary. The difference is that
this library is templatized, so the argument class is type independent.
Type independence avoids identical-except-for-type objects, such
as IntArg, FloatArg, and StringArg. While the library is not strictly
compliant with the GNU or POSIX standards, it is close.

TCLAP is written in ANSI C++ and is meant to be compatible with any
standards-compliant C++ compiler. It is known to work on Linux,
MacOS X, Windows, and Solaris platforms. The library is implemented
entirely in header files making it easy to use and distribute with
other software. It is licensed under the MIT License for worry free
distribution.
